---
layout: m1x_soap
title: Product Custom Option Types
---

<h3><a name="product_custom_option.types-Module%3AComplexProductAPI"></a>Module: Complex Product API</h3>

<h4><a name="product_custom_option.types-Resource%3Aproductcustomoption"></a>Resource: product_custom_option</h4>


<h5><a name="product_custom_option.types-Method%3A"></a>Method:</h5>

<ul>
	<li>product_custom_option.types (SOAP V1)</li>
	<li>catalogProductCustomOptionTypes (SOAP V2)</li>
</ul>


<p>Allows you to retrieve the list of available custom option types.</p>

<p><b>Arguments:</b></p>

<table><tbody>
<tr>
<th> Type </th>
<th> Name </th>
<th> Description </th>
</tr>
<tr>
<td> string </td>
<td> sessionId </td>
<td> Session ID </td>
</tr>
</tbody></table>


<p><b>Return:</b></p>

<table><tbody>
<tr>
<th> Type </th>
<th> Name </th>
<th> Description </th>
</tr>
<tr>
<td> array </td>
<td> result </td>
<td> Array of catalogProductCustomOptionTypes </td>
</tr>
</tbody></table>


<p>The <b>catalogProductCustomOptionTypesEntity</b> content is as follows:</p>

<table><tbody>
<tr>
<th> Type </th>
<th> Name </th>
<th> Description </th>
</tr>
<tr>
<td> string </td>
<td> label </td>
<td> Custom option label </td>
</tr>
<tr>
<td> string </td>
<td> value <br class="atl-forced-newline" /> </td>
<td> Custom option value </td>
</tr>
</tbody></table>

<p><b>Faults:</b></p>

<p><em>No faults</em></p>

<h4><a name="product_custom_option.types-Examples"></a>Examples</h4>

<h5><a name="product_custom_option.types-RequestExampleSOAPV1"></a>Request Example SOAP V1</h5>

<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<div>
		<pre class="theme: Default; brush: php; gutter: false">$client = new SoapClient('http://magentohost/api/soap/?wsdl');

// If somestuff requires API authentication,
// then get a session token
$session = $client-&gt;login('apiUser', 'apiKey');

$result = $client-&gt;call($session, 'product_custom_option.types');
var_dump($result);

// If you don't need the session anymore
//$client-&gt;endSession($session);</pre>
		</div>
</div></div>

<h5><a name="product_custom_option.types-RequestExampleSOAPV2"></a>Request Example SOAP V2</h5>

<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<div>
		<pre class="theme: Default; brush: php; gutter: false">$proxy = new SoapClient('http://magentohost/api/v2_soap/?wsdl'); // TODO : change url
$sessionId = $proxy-&gt;login('apiUser', 'apiKey'); // TODO : change login and pwd if necessary

$result = $proxy-&gt;catalogProductCustomOptionTypes($sessionId);
var_dump($result);</pre>
		</div>
</div></div>


<h5><a name="product_custom_option.types-RequestExampleSOAPV2%28WSIComplianceMode%29"></a>Request Example SOAP V2 (WS-I Compliance Mode)</h5>

<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<div>
		<pre class="theme: Default; brush: php; gutter: false">$proxy = new SoapClient('http://magentohost/api/v2_soap/?wsdl');

$sessionId = $proxy-&gt;login((object)array('username' =&gt; 'apiUser', 'apiKey' =&gt; 'apiKey'));

$result = $proxy-&gt;catalogProductCustomOptionTypes((object)array('sessionId' =&gt; $sessionId-&gt;result));
var_dump($result-&gt;result);</pre>
		</div>
</div></div>

<h5><a name="product_custom_option.types-ResponseExampleSOAPV1"></a>Response Example SOAP V1</h5>

<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<div>
		<pre class="theme: Default; brush: java; gutter: false">array
  0 =&gt;
    array
      'label' =&gt; string 'Field' (length=5)
      'value' =&gt; string 'field' (length=5)
  1 =&gt;
    array
      'label' =&gt; string 'Area' (length=4)
      'value' =&gt; string 'area' (length=4)
  2 =&gt;
    array
      'label' =&gt; string 'File' (length=4)
      'value' =&gt; string 'file' (length=4)
  3 =&gt;
    array
      'label' =&gt; string 'Drop-down' (length=9)
      'value' =&gt; string 'drop_down' (length=9)
  4 =&gt;
    array
      'label' =&gt; string 'Radio Buttons' (length=13)
      'value' =&gt; string 'radio' (length=5)
  5 =&gt;
    array
      'label' =&gt; string 'Checkbox' (length=8)
      'value' =&gt; string 'checkbox' (length=8)
  6 =&gt;
    array
      'label' =&gt; string 'Multiple Select' (length=15)
      'value' =&gt; string 'multiple' (length=8)
  7 =&gt;
    array
      'label' =&gt; string 'Date' (length=4)
      'value' =&gt; string 'date' (length=4)
  8 =&gt;
    array
      'label' =&gt; string 'Date &amp; Time' (length=11)
      'value' =&gt; string 'date_time' (length=9)
  9 =&gt;
    array
      'label' =&gt; string 'Time' (length=4)
      'value' =&gt; string 'time' (length=4)</pre>
		</div>
</div></div>


